A Software Strategy to Improve Cache Performance
نویسندگان
چکیده
In embedded systems, cost, power consumption, and die size requirements push the designer to use small and simple cache memories. Such caches can provide low performance because of limited memory capacity and inflexible placement policy. A way to increase the performance is to adapt the program layout to the cache structure. This strategy needs the solution of a N-P complete problem and a very long processing time. We propose a strategy to look for a near optimum program layout within a reasonable time by means of smart heuristics. This solution does not add code and uses standard functionality’s of a linker to produce the new layout. Our approach is able to reduce up to 70% the misses in case of a 2-kbyte direct access cache.
منابع مشابه
SECTORED CACHE PERFORMANCE EVALUATION: A case study on the KSR-1 data subcache
Sectoring is a cache design and management technique that is re-emerging as cache sizes get larger and computer designers strive to exploit the possible gains from using large block (line) sizes due to spatial locality. Sectoring allows for a small tag array size to suffice retaining address tags only for the large blocks, but still avoids huge miss penalties by utilizing a smaller transfer siz...
متن کاملOptimizing Performance in Highly Utilized Multicores with Intelligent Prefetching
Khan, M. 2016. Optimizing Performance in Highly Utilized Multicores with Intelligent Prefetching. Digital Comprehensive Summaries of Uppsala Dissertations from the Faculty of Science and Technology 1335. 54 pp. Uppsala: Acta Universitatis Upsaliensis. ISBN 978-91-554-9450-6. Modern processors apply sophisticated techniques, such as deep cache hierarchies and hardware prefetching, to increase pe...
متن کاملThe Shared Regions Approach to Software Cache Coherence onMultiprocessorsHarjinder
The eeective management of caches is critical to the performance of applications on shared-memory multiprocessors. In this paper, we discuss a technique for software cache coherence that is based upon the integration of a program-level abstraction for shared data with software cache management. The program-level abstraction, called Shared Regions, explicitly relates synchronization objects with...
متن کاملObject Caching in a Transactional, Object-Relational CORBA Environment
The OMG's CORBA and CORBA services like the OTS are a technology standard that enable the building of transactional systems running in distributed and heterogeneous environments. In large-scale CORBA systems that integrate relational databases, however, careful attention must be paid to network traffic and the number of I/O-operations (like database access) performed, as these can degrade syste...
متن کاملA cache invalidation strategy for mobile networks
The diversity of services delivered over wireless channels has increased people’s desire in ubiquitously accessing these services from their mobile devices. However, a ubiquitous mobile computing environment faces several challenges such as scarce bandwidth, limited energy resources, and frequent disconnection of the server and mobile devices. Caching frequently accessed data is an effective te...
متن کامل